home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1995 April / Internet Tools.iso / dos_win / lanman / drivers / os2 / UBNEA / UBNEAO.ZIP / README.TXT < prev    next >
Encoding:
Text File  |  1992-03-25  |  12.9 KB  |  204 lines

  1.  
  2. ;   This is a sample PROTOCOL.INI file for the Ungermann-Bass NDIS MAC driver
  3. ; for Access/MC, Access/PC-16, and Access/PC-8 network adapter cards.  This
  4. ; driver's name is "UBNEA".  The executable files are UBNEA.OS2 and UBNEA.DOS,
  5. ; for OS/2 and DOS respectively.
  6.     
  7.     DriverName = UBNEA$
  8.  
  9.     AdapterType = Access/PC-8
  10. ;   AdapterType = Access/PC-16
  11. ;   AdapterType = Access/MC
  12.     
  13.     IO_Port = 0x300
  14.     IRQ_Level = 3
  15. ;   SlotNumber = 4
  16.     MaxTransmits = 6
  17.     MaxMulticast = 16
  18.     ReceiveMethod = ReceiveChain
  19.     ReceiveBuffers = 64
  20.     ReceiveBufSize = 600
  21.  
  22. ;  Comments about UBNEA parameters:
  23. ;  -------------------------------
  24. ;  DriverName:
  25. ;           This parameter's value must be UBNEA$, or, in the case where
  26. ;       multiple adapters are installed, UBNEA$ for the first adapter's
  27. ;       DriverName, UBNEA2$ for the second one, UBNEA3$ for the third, and
  28. ;       so on.
  29. ;  AdapterType:
  30. ;           This specifies the type of Ungermann-Bass adapter.  The possible
  31. ;       values are:
  32. ;           AdapterType = Access/PC-16  for the Access/PC-16 adapter;
  33. ;           AdapterType = Access/PC-8   for the Access/PC-8 adapter; and
  34. ;           AdapterType = Access/MC     for the Access/MC adapter.
  35. ;  IO_Port:    (Default = 0x300; for other choices see the lists below.)
  36. ;           This specifies the base address in the Host PC's I/O address space
  37. ;       of the adapter's I/O ports.  Its value must agree with the jumpered
  38. ;       configuration of the adapter.
  39. ;           For the Access/MC, "IO_Port" is not needed and will be ignored.
  40. ;           For the Access/PC-8, there are 8 possible choices for the I/O port
  41. ;       base address.  They are:
  42. ;               0x200, 0x240, 0x280, 0x2C0, 0x300, 0x340, 0x380, 0x3C0.
  43. ;           For the Access/PC-16 there are 32 possible choices:
  44. ;               0x000, 0x020, 0x040, 0x060, 0x080, 0x0A0, 0x0C0, 0x0E0,
  45. ;               0x100, 0x120, 0x140, 0x160, 0x180, 0x1A0, 0x1C0, 0x1E0,
  46. ;               0x200, 0x220, 0x240, 0x260, 0x280, 0x2A0, 0x2C0, 0x2E0,
  47. ;               0x300, 0x320, 0x340, 0x360, 0x380, 0x3A0, 0x3C0, 0x3E0.
  48. ;       The adapter uses 32 sequential I/O port addresses starting at the base
  49. ;       address.  That is, if you choose, for example, 0x300, the entire range
  50. ;       of addresses 0x300, 0x301, ..., 0x31F will be used by the adapter.
  51. ;           When you install an Access/PC-16 or Access/PC-8 adapter, you must
  52. ;       choose an I/O base address for it.  You must choose it such that none
  53. ;       of the addresses in the corresponding range are already allocated to
  54. ;       a system I/O device or to another adapter which is installed in your
  55. ;       system.  Then you set the jumpers on the adapter to select the base
  56. ;       address you've chosen, and you also specify that base address as the
  57. ;       value for the "IO_Port" parameter. Note that in many cases the default
  58. ;       base address (0x300) will be just fine, and you won't have to change
  59. ;       the jumpers.
  60. ;  IRQ_Level:                   (Default = 3; other choices: see below.)
  61. ;           This specifies the interrupt request (IRQ) level that will be used
  62. ;       by the adapter-to-PC interrupt. Its value must agree with the jumpered
  63. ;       configuration of the adapter.
  64. ;           For the Access/MC, "IRQ_level" is not needed and will be ignored.
  65. ;       For the Access/PC-8 and Access/PC-16, the choices are as follows.
  66. ;       Access/PC-8:    2, 3, 4, 5, and 7.
  67. ;       Access/PC-16:   2, 3, 4, 5, 7, 10, 11, 12, and 15.
  68. ;           When you install an Access/PC-8 or Access/PC-16, you must choose
  69. ;       an IRQ level for the adapter.  You must choose a level that is not
  70. ;       already allocated to a system I/O device or to another adapter which
  71. ;       is installed in your system.  You set the jumpers on the adapter to
  72. ;       select the level you've chosen, and you also specify that level as the
  73. ;       value for the "IRQ_Level" parameter.  In many system configurations
  74. ;       the default level (IRQ level 3) will be available, and you won't have
  75. ;       to change the jumpers.
  76. ;  MaxTransmits:                (Default = 8; Min = 1; Max = around 400.)
  77. ;           This specifies the number of "TransmitChain"s that the MAC driver
  78. ;       guarantees to accept without giving an "OUT_OF_RESOURCE" response.
  79. ;  MaxMulticast:                (Default = 16; Min = 0; Max = 255.)
  80. ;           This specifies the maximum number of multicast addresses that can
  81. ;       be in effect simultaneously. (NOTE that there's no 's' on the end of
  82. ;       this keyword.)
  83. ;  ReceiveMethod:    Choices: "ReceiveLookahead" and "ReceiveChain".
  84. ;                    Default = ReceiveLookahead for Access/MC and Access/PC-16
  85. ;                    Default = ReceiveChain for Access/PC-8
  86. ;           This determines the method of received frame delivery the MAC
  87. ;       driver will use.  The possibilities are described below.  Which one
  88. ;       is best to use depends on (a) which kind of adapter you have and on
  89. ;       (b) how the Protocol driver you're using works.  As a general rule,
  90. ;       use:  ReceiveMethod = ReceiveChain      for the Access/PC-8, and
  91. ;       use:  ReceiveMethod = ReceiveLookahead  for the Access/MC and
  92. ;                                                       Access/PC-16.
  93. ;   (1) ReceiveMethod = ReceiveLookahead
  94. ;           When a received frame is available and Indications are On, the MAC
  95. ;       driver moves the frame's data from the adapter's receive buffer area
  96. ;       into a single, dedicated, MAC buffer in Host memory, and calls the
  97. ;       Protocol driver's "ReceiveLookahead" routine.  "ReceiveLookahead" is
  98. ;       given the total length of the frame and a pointer to the copy of the
  99. ;       frame in the buffer.  If the Protocol driver wants the frame, it must
  100. ;       copy the frame before returning from "ReceiveLookahead".  Since the
  101. ;       entire frame is available in the buffer, the Protocol driver may copy
  102. ;       the frame directly.  Alternatively, it may call the MAC driver's
  103. ;       "TransferData" routine to do the copying.  When the Protocol driver
  104. ;       returns from "ReceiveLookahead", the MAC driver frees the dedicated
  105. ;       buffer for use in delivering more frames.
  106. ;           In this method, frames are left in the adapter's receive buffer
  107. ;       area until they can be delivered to the Protocol driver.  The small
  108. ;       size (4096 bytes) of the receive buffer area in the Access/PC-8 makes
  109. ;       this method unsuitable for that adapter, except in applications where
  110. ;       the volume of network traffic is low.
  111. ;           The important advantage of this method is that the MAC allocates
  112. ;       no receive buffers (well, only one) in Host memory.
  113. ;           This method works best if the Protocol driver is able to copy the
  114. ;       frame to the Protocol driver's client's buffers at the time "Receive-
  115. ;       Lookahead" is called.  It is also a good method if the Protocol driver
  116. ;       always copies frames into internal buffers of its own.
  117. ;   (2) ReceiveMethod = ReceiveChain
  118. ;           In this method, the MAC driver moves frames from the adapter's
  119. ;       receive buffer area into receive buffers in the Host memory as frames
  120. ;       arrive.  It does this independently of whether the frames can be
  121. ;       immediately delivered to the Protocol driver, i.e., independently of
  122. ;       whether Indications are On or Off.  Its goal is to keep the adapter's
  123. ;       receive buffer area free, so that frames arriving from the network
  124. ;       are not lost.
  125. ;           When Indications are On and a received frame is available in the
  126. ;       Host-memory receive buffers, the MAC driver will call the Protocol
  127. ;       driver's "ReceiveChain" routine, passing it an "RxBufDescr" which
  128. ;       points to the frame in the Host-memory buffers.  The Protocol driver
  129. ;       can copy the frame immediately or leave it in the Host-memory buffers.
  130. ;       It must eventually call the MAC driver's "ReceiveRelease" routine to
  131. ;       free the Host-memory buffers for reuse.
  132. ;           In this mode, the MAC driver allocates receive buffers in the Host
  133. ;       memory.  These buffers are allocated at driver INIT time. Their number
  134. ;       and size are determined by the "ReceiveBuffers" and "RcvBufSize" para-
  135. ;       meters.
  136. ;           This method is intended primarily to be used with the Access/PC-8
  137. ;       adapter, in which the size of the adapter's receive buffer area is
  138. ;       small and the possibility of losing frames due to adapter receive
  139. ;       buffer overrun is real.
  140. ;           Another advantage of this method is that in it the MAC driver can
  141. ;       provide a possibly large amount of long-term frame buffering in which
  142. ;       a Protocol driver can leave received frames until it can deliver them
  143. ;       to its clients.  This advantage comes at the cost of the space devoted
  144. ;       to the Host-memory buffers.
  145. ;  ReceiveBuffers:              (Default = 32; Min = 16; Max = 512.)
  146. ;           This specifies the number of receive buffers that the MAC driver
  147. ;       will allocate in the Host memory.  This parameter is meaningful only
  148. ;       if "ReceiveMethod = ReceiveChain" is selected.  If "ReceiveMethod =
  149. ;       ReceiveLookahead" is used, no receive buffers will be allocated in
  150. ;       Host memory -- the "ReceiveBuffers" parameter will be ignored.
  151. ;  ReceiveBufSize:              (Default = 600; Min = 256; Max = 1514.)
  152. ;           This specifies the size of the receive buffers the MAC driver will
  153. ;       allocate in Host memory.  This should be large enough to hold the
  154. ;       normal expected received frame.  It need not be large enough to hold
  155. ;       the largest expected frame.  The MAC driver will handle large frames
  156. ;       in multiple receive buffers. The value of ReceiveBufSize must be even.
  157. ;       "ReceiveBufSize" is meaningful only if "ReceiveMethod = ReceiveChain"
  158. ;       is selected.  If "ReceiveMethod = ReceiveLookahead" is used, no Host-
  159. ;       memory receive buffers will be allocated -- the "ReceiveBufSize"
  160. ;       parameter will be ignored.
  161. ;  SlotNumber:                  (Min = 1; Max = 8.)
  162. ;           This parameter is needed only when multiple Access/MC adapters,
  163. ;       and multiple instances of the UBNEA driver, are installed. Even then,
  164. ;       this parameter is required only if it is necessary to override the
  165. ;       default association between driver instances and adapters. By default,
  166. ;       the UBNEA driver instance that comes first in PROTOCOL.INI will be
  167. ;       associated with the Access/MC adapter in the lowest numbered slot, the
  168. ;       UBNEA driver instance that comes second will be associated with the
  169. ;       Access/MC adapter in the second lowest numbered slot, and so on.
  170. ;  PermanentAddr:       The value is a string of 12 ASCII hexadecimal digits,
  171. ;                       for example:    PermanentAddr = "00DD01AABBCC"
  172. ;           This parameter provides a way to override the "Permanent Station
  173. ;       Address" that's built into the adapter. Note that this parameter is
  174. ;       normally not needed, and shouldn't be used.  The NDIS specification
  175. ;       strongly discourages configuring the "Permanent Station Address".
  176. ;
  177. ;  How Much Host Memory UBNEA Uses
  178. ;  -------------------------------
  179. ;           You can compute the amount of PC memory UBNEA will use. It depends
  180. ;       on the "ReceiveMethod" you select and on the values you choose for the
  181. ;       "MaxTransmits", "MaxMulticast", "ReceiveBuffers", and "ReceiveBufSize"
  182. ;       parameters. The total space used will be the sum of the following four
  183. ;       items.
  184. ;   (1) For driver code and data:  11000 (4218 data + 6782 code)
  185. ;   (2) For transmit queueing:     16 + (MaxTransmits - 2) * 146
  186. ;   (3) For multicast addresses:    4 + (MaxMulticast * 16)     
  187. ;   (4) For receive buffers:       16 + ReceiveBuffers * (ReceiveBufSize + 10)
  188. ;       Item (4) does not apply if you use "ReceiveMethod = ReceiveLookahead".
  189. ;           The total you compute may not be exactly correct but it should be
  190. ;       close.  The reasons for inexactness are: (a) the value for item number
  191. ;       (1) will vary with different versions of the drivers; and (b) the
  192. ;       other items may take up a little more space than the formulas imply,
  193. ;       because of the need to allocate buffers and other data structures at
  194. ;       doubleword-aligned or paragraph-aligned boundaries.
  195. ;           Under DOS, all the space used by the driver is allocated in one
  196. ;       contiguous piece.  It will be in "conventional" memory (that is, in
  197. ;       the first 640K) if the driver is loaded by a normal "DEVICE=" line in
  198. ;       CONFIG.SYS, or in "upper" memory (above 640K) if the driver is loaded
  199. ;       by "DEVICEHIGH=" or by "LOADHI".  Note that if the total memory used
  200. ;       is large (because of a large value for item (4)), there may not be
  201. ;       room to load the driver into "upper" memory.
  202. ;           Under OS/2, item (1) is allocated in low memory, and the other
  203. ;       items are allocated in high memory if possible.
  204.